using System;
using System.Collections.Generic;
using System.Text;
using FytSoa.Model.Entity;

namespace FytSoa.Application.Sys.Dto
{
    /// <summary>
    /// 接受参数对象
    /// </summary>
    public class SysCodeTypeParam : Entity<string>
    {

        /// <summary>
        /// 父节点
        /// <summary>
        public string ParentId { get; set; }

        /// <summary>
        /// 分类名称
        /// <summary>
        public string Name { get; set; }

        /// <summary>
        /// 排序
        /// <summary>
        public int Sort { get; set; } = 1;

        /// <summary>
        /// 是否系统内置集成
        /// <summary>
        public bool IsSystem { get; set; } = false;
    }

    /// <summary>
    /// 提供前端的对象
    /// </summary>
    public class SysCodeTypeDto: Entity<string>
    {

        /// <summary>
        /// 父节点
        /// <summary>
        public string ParentId { get; set; }

        /// <summary>
        /// 分类名称
        /// <summary>
        public string Name { get; set; }

        /// <summary>
        /// 排序
        /// <summary>
        public int Sort { get; set; } = 1;

        /// <summary>
        /// 是否系统内置集成
        /// <summary>
        public bool IsSystem { get; set; } = false;

        /// <summary>
        /// 创建时间
        /// <summary>
        public DateTime CreateTime { get; set; } = DateTime.Now;

        /// <summary>
        /// 子级
        /// </summary>
        public List<SysCodeTypeDto> children { get; set; }
    }

    /// <summary>
    /// 字典值——提供前端的对象
    /// </summary>
    public class SysCodeDto : Entity<string>
    {

        /// <summary>
        /// 分类编号
        /// <summary>
        public string TypeId { get; set; }

        /// <summary>
        /// 字典值名称
        /// <summary>
        public string Name { get; set; }

        /// <summary>
        /// 字典值阈值
        /// <summary>
        public string CodeValues { get; set; }

        /// <summary>
        /// 排序
        /// <summary>
        public int Sort { get; set; } = 1;

        /// <summary>
        /// 状态
        /// <summary>
        public bool Status { get; set; } = true;

        /// <summary>
        /// 备注
        /// <summary>
        public string Summary { get; set; }

        /// <summary>
        /// 创建时间
        /// <summary>
        public DateTime CreateTime { get; set; } = DateTime.Now;
    }

}